package com.aiyige.model.moment.entity;

import java.io.Serializable;

/**
 * Created by xiachao on 2018/1/25.
 */

public class Praise implements Serializable {

    public Praise() {

    }
    private static final long serialVersionUID = -383677788637711353L;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public String getObjectId() {
        return objectId;
    }

    public void setObjectId(String objectId) {
        this.objectId = objectId;
    }

    public String getObjectType() {
        return objectType;
    }

    public void setObjectType(String objectType) {
        this.objectType = objectType;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    private String id;
    /**
     * 点赞对象Id
     */
    private String objectId;
    /**
     * 点赞对象类型：moment，comment
     */
    private String objectType;

    /**
     * 主题类型
     */
    private String subject;

    /**
     * 创建人
     */
    private String creator;

    private Long createTime;

    private Praise(Builder builder) {
        id = builder.id;
        objectId = builder.objectId;
        objectType = builder.objectType;
        subject = builder.subject;
        creator = builder.creator;
        createTime = builder.createTime;
    }

    public static Builder newBuilder() {
        return new Builder();
    }

    public static final class Builder {
        private String id;
        private String objectId;
        private String objectType;
        private String subject;
        private String creator;
        private Long createTime;

        private Builder() {
        }

        public Builder id(String id) {
            this.id = id;
            return this;
        }

        public Builder objectId(String objectId) {
            this.objectId = objectId;
            return this;
        }

        public Builder objectType(String objectType) {
            this.objectType = objectType;
            return this;
        }

        public Builder subject(String subject) {
            this.subject = subject;
            return this;
        }

        public Builder creator(String creator) {
            this.creator = creator;
            return this;
        }

        public Builder createTime(Long createTime) {
            this.createTime = createTime;
            return this;
        }

        public Praise build() {
            return new Praise(this);
        }
    }
}